Android JUnit 测试 ClassNotFoundException
全部标签 我的pom中有两个依赖项javaee-api和hibernate-entitymanager。但它们不能很好地协同工作:一旦我添加javaee-api,我的所有单元测试都会因java.lang.ClassFormatError:AbsentCodeattributeinmethodthatisnotnativeorabstractinmethodinclassfilejavax而中断/验证/验证。没有javaee-api,一切正常。这是为什么?(已编辑此问题以解决问题;)) 最佳答案 MavenDependencies没有顺序,但是
@Transactional(propagation=Propagation.REQUIRED)publicvoidexe(){try{ReservereserveInfo=newTransactionTemplate.execute(newTransactionCallback(){@OverridepublicReservedoInTransaction(TransactionStatusstatus){returnreserveService.callReserve(reserveDetails);}});if(reserveInfo!=null&&reserveInfo.get
当目标有重载时,命名单元测试方法最被接受的方式是什么。考虑这些方法:doSomething();doSomething(String);您如何命名相应的测试方法?这是最容易接受的方式吗?testDoSomething();testDoSomethingString(); 最佳答案 做任何让你和你的同事更易读的事情,如果有的话。我认为这取决于您对该类的其他测试是什么,但基于这两种方法,我会这样做:测试doSomething()的测试方法:doSomething_void_success(这将是测试成功路径的一些测试)doSomethi
在Java测试环境中,我可以使用如下代码中的参数化单元测试:@RunWith(value=Parameterized.class)publicclassJunitTest6{privateintnumber;publicJunitTest6(intnumber){this.number=number;}@ParameterspublicstaticCollectiondata(){Object[][]data=newObject[][]{{1},{2},{3},{4}};returnArrays.asList(data);}@TestpublicvoidpushTest(){Syste
我在项目的src/test/java文件夹中有一些类用作测试。当我使用标准Maven编译插件运行Maven时。这些项目被编译成.class文件,并包含在打包编译代码的jar中。在运行maven和构建我的版本之前,我已经为自己创建了这些测试以在eclipse中运行。它们只是完整性测试,不应包含在构建中。我不想将它们放在一个单独的项目中,因为对我来说,它们在这里很有意义。我如何告诉Maven我不希望它编译/包含该目录中的文件?我相信maven编译器插件生成的jar如下:maven-compiler-plugin1.61.6 最佳答案 我
所以我正在试验Selenium自动化,我正在尝试编写一个测试用例来登录、转到特定页面、输入数据,然后按下提交。问题是当它运行时,它会输入凭据,按“提交”,网站返回:ThissiteusesHTTPcookiestoverifyauthorizationinformation.PleaseenableHTTPcookiestocontinue.但是当我添加这一行时[由//1表示]:driver.findElement(By.cssSelector("p>input[type=\"submit\"]")).click();它允许登录通过,直到它到达发送消息页面[由//2表示],它再次请求凭
可能我失去了理智,但今天早上当我升级到EclipseKepler时,我试图同时为多个Eclipse项目运行单元测试但失败了。我选择了多个项目,打开右键菜单,“运行方式...”选项不见了。“该死的开普勒!”我思考并启动了我的旧Juno安装,以说服自己行为已经改变。但是,它在那里也不起作用。我现在质疑我的理智是否真的有可能。ManyotherStackOverflow问题及其他sites表明这是一项艰巨的任务,如果不是不可能的话。但是,我非常确定我在最近做过这件事,这让我有点慌乱。所以...这在开普勒或朱诺号中是否可行?谁能推荐一个可能启用该功能的流行插件(我错误地认为这是默认行为)?背景
我需要对事件监听器的功能进行单元测试,但我以前从未做过,而且我似乎在任何地方都找不到相关示例。有人对解决此问题的好方法有任何建议吗? 最佳答案 没什么大不了的,构造事件监听器,传入模拟事件,然后测试。@TestpublicvoidtestEventListener(){ActionListenersubjectUnderTest=newMyActionListener();ActionEventmockEvent=mock(ActionEvent.class);//OrjustcreateanewActionEvent,e.g.ne
我们使用Cucumber-JVM来编写我们的验收测试脚本,并使用JUnit来执行它们(通过JUnitCucumber运行程序)。由于这些测试涉及SeleniumWebDriver,我希望能够在我的测试失败时截取屏幕截图(我有相应的代码)。如果我简单地添加一个WebDriveronException钩子(Hook),当断言失败时将不会截取屏幕截图。我希望能够向Cucumberrunner添加JUnit执行监听器,但API似乎不支持此功能(Cucumber.class上没有addListener方法)。有人可以帮忙吗?感谢团队。 最佳答案
我正试图找到在非测试代码中使用Hamcrest匹配器的明确答案。我做了一些研究,并有一些对比引述:HamcrestWikipedia:HamcrestisaframeworkthatassistswritingsoftwaretestsintheJavaprogramminglanguage.[snip]ThesematchershaveusesinunittestingframeworkssuchasJUnit2andjMock.HamcrestGithub:Hamcrestisalibraryofmatchers,whichcanbecombinedintocreateflexib